]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Revert "js/ui: Use Clutter.OffscreenRedirect.ON_IDLE"
authorDaniel van Vugt <daniel.van.vugt@canonical.com>
Wed, 26 Feb 2020 03:53:40 +0000 (11:53 +0800)
committerDaniel van Vugt <daniel.van.vugt@canonical.com>
Wed, 26 Feb 2020 03:54:54 +0000 (11:54 +0800)
This reverts commit c0c027c608d0aa1c547a2a82bd3ce6b84bb83b83. Because for
some reason animating external opacity and position is still incurring
internal repaints, which disables offscreening and makes fading of
overlapping actors look wrong. `ON_IDLE` should be fixed in mutter before
it is used (in boxpointer at least) again.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/issues/2270

js/ui/boxpointer.js
js/ui/dash.js
js/ui/overview.js
js/ui/panel.js
js/ui/windowManager.js

index 940f6aa16bcf258458fb2775f332b2d9dee60ad3..03cb4a567f66bf28983a26bc080a522fd9ffb8d6 100644 (file)
@@ -33,7 +33,7 @@ var BoxPointer = GObject.registerClass({
     _init(arrowSide, binProperties) {
         super._init();
 
-        this.set_offscreen_redirect(Clutter.OffscreenRedirect.ON_IDLE);
+        this.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
 
         this._arrowSide = arrowSide;
         this._userArrowSide = arrowSide;
index 928104637874677403a3cf1448792d5b07f60ece..6eb71e73bd7394ab9f06c3484f036d6849c1dcee 100644 (file)
@@ -353,7 +353,7 @@ var Dash = GObject.registerClass({
                                        clip_to_allocation: true });
         this._box._delegate = this;
         this._container.add_actor(this._box);
-        this._container.set_offscreen_redirect(Clutter.OffscreenRedirect.ON_IDLE);
+        this._container.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
 
         this._showAppsIcon = new ShowAppsIcon();
         this._showAppsIcon.show(false);
index 4b30b6f8788449d62f135d87bcfb789292cc4a07..2e6b93da691006d58c6d7102a41849b3c97d9e9c 100644 (file)
@@ -108,7 +108,7 @@ class OverviewActor extends St.BoxLayout {
             track_hover: true,
             can_focus: true,
         });
-        this._searchEntry.set_offscreen_redirect(Clutter.OffscreenRedirect.ON_IDLE);
+        this._searchEntry.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
         let searchEntryBin = new St.Bin({
             child: this._searchEntry,
             x_align: Clutter.ActorAlign.CENTER,
index df8fe116035e75ec4600a43211fe7acb4df65143..ec39cebb61e9604daa466ae34b05ae5a020b0c85 100644 (file)
@@ -794,7 +794,7 @@ class Panel extends St.Widget {
         super._init({ name: 'panel',
                       reactive: true });
 
-        this.set_offscreen_redirect(Clutter.OffscreenRedirect.ON_IDLE);
+        this.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
 
         this._sessionStyle = null;
 
index b1b0806163ba17d985cd3dc59547c325f5a7feae..075fbb15bb44ff4e9da0dc44ce87687fdb805461 100644 (file)
@@ -1256,7 +1256,7 @@ var WindowManager = class {
         // while actor updates are frozen.
         let actorContent = Shell.util_get_content_for_window_actor(actor, oldFrameRect);
         let actorClone = new St.Widget({ content: actorContent });
-        actorClone.set_offscreen_redirect(Clutter.OffscreenRedirect.ON_IDLE);
+        actorClone.set_offscreen_redirect(Clutter.OffscreenRedirect.ALWAYS);
         actorClone.set_position(oldFrameRect.x, oldFrameRect.y);
         actorClone.set_size(oldFrameRect.width, oldFrameRect.height);
         Main.uiGroup.add_actor(actorClone);